// Package sysin
// @Link  https://github.com/bufanyun/hotgo
// @Copyright  Copyright (c) 2025 HotGo CLI
// @Author  Ms <133814250@qq.com>
// @License  https://github.com/bufanyun/hotgo/blob/master/LICENSE
// @AutoGenerate Version 2.16.10
package sysin

import (
	"context"
	"hotgo/internal/model/entity"
	"hotgo/internal/model/input/form"

	"github.com/gogf/gf/v2/os/gtime"
)

// HotmatchUpdateFields 修改热门赛事字段过滤
type HotmatchUpdateFields struct {
	Title     string      `json:"title"     dc:"标题"`
	Starttime *gtime.Time `json:"starttime" dc:"活动时间"`
	Img       string      `json:"img"       dc:"图片"`
	Url       string      `json:"url"       dc:"地址"`
	Sort      int         `json:"sort"      dc:"排序"`
}

// HotmatchInsertFields 新增热门赛事字段过滤
type HotmatchInsertFields struct {
	Title     string      `json:"title"     dc:"标题"`
	Starttime *gtime.Time `json:"starttime" dc:"活动时间"`
	Img       string      `json:"img"       dc:"图片"`
	Url       string      `json:"url"       dc:"地址"`
	Sort      int         `json:"sort"      dc:"排序"`
}

// HotmatchEditInp 修改/新增热门赛事
type HotmatchEditInp struct {
	entity.Hotmatch
}

func (in *HotmatchEditInp) Filter(ctx context.Context) (err error) {

	return
}

type HotmatchEditModel struct{}

// HotmatchDeleteInp 删除热门赛事
type HotmatchDeleteInp struct {
	Id interface{} `json:"id" v:"required#id不能为空" dc:"id"`
}

func (in *HotmatchDeleteInp) Filter(ctx context.Context) (err error) {
	return
}

type HotmatchDeleteModel struct{}

// HotmatchViewInp 获取指定热门赛事信息
type HotmatchViewInp struct {
	Id int `json:"id" v:"required#id不能为空" dc:"id"`
}

func (in *HotmatchViewInp) Filter(ctx context.Context) (err error) {
	return
}

type HotmatchViewModel struct {
	entity.Hotmatch
}

// HotmatchListInp 获取热门赛事列表
type HotmatchListInp struct {
	form.PageReq
	Id    int    `json:"id"    dc:"id"`
	Title string `json:"title" dc:"标题"`
}

func (in *HotmatchListInp) Filter(ctx context.Context) (err error) {
	return
}

type HotmatchListModel struct {
	Id        int         `json:"id"        dc:"id"`
	Title     string      `json:"title"     dc:"标题"`
	Starttime *gtime.Time `json:"starttime" dc:"活动时间"`
	Img       string      `json:"img"       dc:"图片"`
	Url       string      `json:"url"       dc:"地址"`
	Sort      int         `json:"sort"      dc:"排序"`
	CreateAt  *gtime.Time `json:"createAt"  dc:"create_at"`
	UpdateAt  *gtime.Time `json:"updateAt"  dc:"update_at"`
}

// HotmatchMaxSortInp 获取热门赛事最大排序
type HotmatchMaxSortInp struct{}

func (in *HotmatchMaxSortInp) Filter(ctx context.Context) (err error) {
	return
}

type HotmatchMaxSortModel struct {
	Sort int `json:"sort"  description:"排序"`
}